Numerical control apparatuses that perform numerical control (hereinafter referred to as NC in some cases) on a machine tool cause the NC machine tool to operate in accordance with NC commands in an NC program. For example, for an NC machine tool to machine a workpiece into a complex shape by means of such as five-axis machining and die machining, an NC program for machining the workpiece is created. Such an NC program is often created by using Computer Aided Manufacturing (CAM).
CAM refers to a system in which a computer assists in creating commands for a numerical control apparatus. The CAM system creates a tool path on a coordinate system set up for a workpiece. The CAM system then allows its internal post processor to convert the commands to NC commands in order to load the commands (including the tool path, machine-specific command types, and operations corresponding to a machine-specific configuration) into an NC machine tool that is to machine the workpiece.
CAM system manufacturers create a post processor for every type of NC machine tool offered by each NC machine tool manufacturer so that commands that include machine-specific command types (such as M codes) and operations corresponding to machine-specific configuration (such as operations corresponding to an axis configuration) are converted into NC commands corresponding to the NC machine tools offered by each NC machine tool manufacturer. With this procedure, a CAM user in general needs to either purchase a CAM post processor created for the NC machine tool that the user plans to use or to create a post processor for the NC machine tool that the user plans to use.
The NC apparatus disclosed in Patent Literature 1 determines, upon the input of an NC command not dependent on an NC machine tool, whether the NC command can be executed in each of the individual NC machine tools. If the command is determined as being executable, the NC apparatus converts the NC command into each of the machine commands with which the NC machine tool will perform the machining.